backend server explained